//*****************************************************************************
//
//! \file analogButtons.h
//! \brief Driver for analogButtons.
//! \version 1.0.0.0
//! \date 03/11/2013
//! \author Nemon
//! \copy
//!
//! Copyright (c)  2013, Nemon
//! All rights reserved.
//!
//! Redistribution and use in source and binary forms, with or without
//! modification, are permitted provided that the following conditions
//! are met:
//!
//!     * Redistributions of source code must retain the above copyright
//! notice, this list of conditions and the following disclaimer.
//!     * Redistributions in binary form must reproduce the above copyright
//! notice, this list of conditions and the following disclaimer in the
//! documentation and/or other materials provided with the distribution.
//!     * Neither the name of the <ORGANIZATION> nor the names of its
//! contributors may be used to endorse or promote products derived
//! from this software without specific prior written permission.
//!
//! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
//! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
//! THE POSSIBILITY OF SUCH DAMAGE.
//
//*****************************************************************************

#ifndef __ANALOGBUTTONS_H__
#define __ANALOGBUTTONS_H__


//*****************************************************************************
//
// If building with a C++ compiler, make all of the definitions in this header
// have a C binding.
//
//*****************************************************************************
#ifdef __cplusplus
extern "C"
{
#endif

//*****************************************************************************
//
//! \addtogroup CoX_Shield_Lib
//! @{
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup Sensor
//! @{
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup Other
//! @{
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup analogButtons
//! @{
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup analogButtons_Configs  analogButtons Driver config
//! \brief pins of analogButtons config.
//!  NOTE: PIN as analog in
//! @{
//
//*****************************************************************************
#define analogButtons_PIN       sA0
#define analogButtons_ADC       ADC0
#define analogButtons_BASE      xADC0_BASE
#define analogButtons_PERIPH    xSYSCTL_PERIPH_ADC0

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup analogButtons_Resistance_Array Array of Resistances
//! \brief Number of Resistance MUST more than zero.
//! @{
//
//*****************************************************************************
#define analogButtons_Resistances_Number \
                                5

#define analogButtons_Resistances_Array \
                                {220,220,220,220,220}

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! \addtogroup analogButtons_Exported_APIs  analogButtons Driver APIs
//! \brief API Refrence of analogButtons Driver.
//! @{
//
//*****************************************************************************

//*****************************************************************************
//
//! \brief make analog Buttons init.
//!
//! make analog Buttons init.
//!
//! \return None
//
//*****************************************************************************
extern void analogButtonsInit(void);

//*****************************************************************************
//
//! \brief get current pressed Button index.
//!
//! get current pressed Button index.
//!
//! \return int the index value(-1 when not pressed)
//
//*****************************************************************************
extern signed int analogButtonsGetPressedIndex();

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
//! @}
//
//*****************************************************************************

//*****************************************************************************
//
// Mark the end of the C bindings section for C++ compilers.
//
//*****************************************************************************
#ifdef __cplusplus
}
#endif

#endif //__ANALOGBUTTONS_H__
